This invention relates to machine vision, and particularly to methods and apparatuses for processing images.
Many machine-vision applications identify regions of images and process the image data within the regions instead of processing the entire image. Regions are segmented using many different vision tools. For instance, growing a region, applying a connectivity analysis, or applying a boundary-tracking algorithm segments regions from an image. The optimal vision tool for a given application depends upon the region being identified and the imaging environment present.
As known in the art, segmenting a region is a difficult machine-vision task. For example, segmenting leads within an image of a leaded device is difficult, where a leaded device is an electronic component that has a device body and metal leads. Leaded devices include surface-mount components and through-hole components, for example. One way to segment the leads is to binarize the image of the leaded device. Binarizing an image is a technique that chooses a threshold value to segment the image into foreground objects and background. Typically, one intensity, such as white, denotes the leads, and the other intensity, such as black, denotes the image background (the background and the device body). One of the short falls of the binarization technique is the inability of a single threshold value to segment the entire lead from the image background and the device body. The leads have specularly reflecting surfaces that frustrate identifying an appropriate threshold value to segment the leads within a front-lit image of the leaded device. The leads also cannot be segmented with one threshold value from within back-lit images, because in back-lit images the leads and the device body have substantially the same grey-scale value. Therefore, no threshold value exists that segments the entire lead relative to the body and background. Thus, the binarization method is not an optimal solution to segment leads.
The same shortfalls arise when trying to segment balls of a ball grid array (BGA) device, where a BGA device is a surface mount device consisting of a approximately rectangular body package and a grid of metal balls.
Therefore, binarization is typically combined with other techniques, such as morphology, for example, to segment leads or balls. Morphology works best when features in the image that belong together are closest together, because the closest features become one region after applying morphology. When leads are imaged, the specularly reflecting surfaces typically cause opposed ends of the leads to appear as bright features in the image, while other areas of the lead remain unclear in the image. The features closest together are the ends of adjacent leads. Therefore, applying morphology produces a region containing the ends of the adjacent leads, which, unfortunately, is not the region desired to be segmented. Therefore, binarization combined with morphology is also not an optimal solution to segment leads.
A region can also be segmented by capitalizing on its inherent properties, such as the texture of the region. Typically, textured regions are segmented using nth-order statistics or textons. Nth-order statistics segment regions that have large enough statistical differences. Therefore, only significantly different regions are segregated by nth order statistics. Further, applications applying nth-ordered statistics segmenting suffer the same problems as other segmentation algorithms: the algorithm has to choose the correct measure (e.g. the correct statistics) to properly identify the right local area. Alternatively, textons, which are local profiles, are used to find textured regions in an image. Textons, however, cannot easily pick up lower frequency texture.
Methods and apparatuses are disclosed for identifying regions of similar texture in an image.
More particularly, the method acquires image data representing the at least one input image and divides at least a portion of the image data into sub-regions, where each of the sub-regions has an origin.
The frequency characteristic(s) for the sub-regions are determined by applying a frequency analysis, such as applying a Fourier transform in one or more orientations. The frequency characteristic(s) of each sub-regions at each orientation is associated with the origin of each of the sub-regions, and thus, with the spatial position of the sub-region within the image.
Then, the frequency characteristic(s) of each of the sub-regions is examined to identify similar sub-regions, thereby identifying regions of similar texture in the input image.
In one embodiment, the frequency characteristic is examined by first representing the frequency characteristic of each of the sub-regions as a value on a frequency-characteristic image at the respective origin of each of the sub-regions and segmenting the similar sub-regions within the frequency-characteristic image using the values of the sub-regions. The regions within the frequency characteristic image are regions of similar texture, but the regions can have different texture from one another.
The invention recognizes, among others, that regions of similar texture display at least one similar frequency characteristic that can be used to segment the regions of similar texture.
Further, the invention recognizes, among others, that the frequency characteristic(s) of an image can be associated with the respective spatial position within the image. Specifically, the invention applies a frequency analysis on a sub-region of the image to generate a frequency characteristic(s) and associates that frequency characteristic(s) with the origin of the sub-region. Using the spatial positions of the frequency characteristics, the invention identifies regions of similar texture in an image.
In another embodiment, more than one frequency characteristic is used to identify the regions. Specifically, each frequency characteristic, for the sub-regions, is stored as an image, as hereinbefore described. Then, the images are combined. In one embodiment, the images are combined by logical anding, which only maintains portions of a region that are within every one of the frequency characteristic images. Thus, the boundary of the region is refined.
In another embodiment, more than one frequency characteristic is also used, but additionally the frequency characteristics images are thresholded to create binary images. Thereafter, at least one of the binary images for one of the frequency characteristics is combined with one of the binary images for another one of the frequency characteristics to again refine the regions of similar texture. In a preferred embodiment, all variations of combining the binary images are performed. Further, in a preferred embodiment, the binary images are combined by logically anding the binary images.
In further aspects, the invention also recognizes that leads of a leaded device or balls of a BGA device will produce a homogeneous frequency, and therefore, can be segmented from an image as described herein.
The invention is particularly useful for segmenting lead sets from an image of a leaded device or segmenting ball regions from an image of a BGA device.
Among other advantages, the invention can segment regions having textures that are typically not classified as similar textures.
The invention solves some of the problems of the prior art, including but not limited to, segmenting lead sets and balls from an image, segmenting regions that do not have an easily identifiable threshold value, but that exhibit similar frequency characteristics, and segmenting low frequency elements using a form of texture segmentation.
In further aspects, the invention provides apparatuses in accord with the methods described above. The aforementioned and other aspects of the invention are evident in the drawings and in the description that follows.